#region Using References

using System;
using System.Runtime.Serialization;

#endregion

namespace Beaker.OpenCube.Metadata
{
	[DataContract]
	public class AuthenticationMetadata
		: IKeyedMetadata<Guid>
	{
		private Guid _uuid;

		/// <summary>
		/// Gets or sets the key of the metadata in the dictionary
		/// </summary>
		Guid IKeyedMetadata<Guid>.Key
		{
			get { return _uuid; }
			set { _uuid = value; }
		}

		[DataMember( Name = "username" )]
		public string UserName { get; set; }

		[DataMember( Name = "accessToken" )]
		public Guid AccessToken { get; set; }

		[DataMember( Name = "uuid" )]
		public Guid PlayerUuid
		{
			get { return _uuid; }
			set { _uuid = value; }
		}

		[DataMember( Name = "displayName" )]
		public string DisplayName { get; set; }
	}
}